<%-- 
    Document   : gescont
    Created on : 19/11/2011, 09:58:19 AM
    Author     : RENZO
--%>
<%@page import="controladores.ContrasteController"%>
<%@page import="params.RecursoContrastes"%>
<%@page import="entidades.UsuarioSession"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@page import="params.RecursoUsuario"%>
<%@page import="controladores.UsuarioController"%>
<%@page import="controladores.RequestParam"%>
<%@page import="util.Encriptador"%>
<%@page import="params.TipoPersona"%>
<%@page import="entidades.Usuario"%>
<%@page contentType="application/json" pageEncoding="UTF-8"%>
<%
    if(request.getParameter("rec") != null){
        String recurso = request.getParameter("rec");
        Boolean sesionValida = false;
        UsuarioController userC = new UsuarioController();
        Usuario objUsuario = new Usuario();
        if(request.getParameter("userId") != null){
            objUsuario.setId(Long.parseLong(request.getParameter("userId").toString()));
            if(objUsuario.getId()>0){
                sesionValida = objUsuario.validarSesion(request.getParameter("sid"));
            }
            String jsonRpta = "";//string donde ira las respuestas en JSON
            
            if(sesionValida){
                ContrasteController contrasC = new ContrasteController();
                if(recurso.equals(RecursoContrastes.sincronizar)){
                    /* Sincronizar (para movil) - GET */
                    try{
                        RequestParam rpUser = new RequestParam("user",request.getParameter("userId"));
                        List<RequestParam> listaReq = new ArrayList<RequestParam>();
                        listaReq.add(rpUser);
                        jsonRpta = contrasC.processPOSTRequest(RecursoContrastes.sincronizar, listaReq);
                    }catch(Exception e){
                        jsonRpta = contrasC.sendMensajeError(e.getMessage());
                    }
                }else if(recurso.equals(RecursoContrastes.add)){
                    
                }else if(recurso.equals(RecursoContrastes.edit)){

                }else if(recurso.equals(RecursoContrastes.regResultado)){
                    /* Registro de resultado de contraste (para movil) - POST */
                    try{
                        RequestParam jsonRequest = new RequestParam("requestData", request.getParameter("requestData"));
                        //RequestParam jsonRequest = new RequestParam("requestData","{realizado:\"N\",resultado:{apreciación:\"B\",lectura:\"127820.5\",voltaje:\"221.2\",precinto:\"0158754\",pruebavacio:\"”S\",comentario:\"comentario de prueba 1\",coordenadaX:\"23654.250234\",coordenadaY:\"12159.56785\",ensayo:{ensayo5:\"0.5\",ensayo10:\"0.9\",ensayo100:\"0.10\",ensayoimax:\"1.2\"}}}");
                        RequestParam contrasteId = new RequestParam("contId", request.getParameter("contId"));
                        RequestParam rpUser = new RequestParam("user",request.getParameter("userId"));
                        List<RequestParam> listaReq = new ArrayList<RequestParam>();
                        listaReq.add(rpUser);//0
                        listaReq.add(contrasteId);//1
                        //listaReq.add(jsonRequest);
                        if(request.getParameter("aprec") != null){
                            listaReq.add(new RequestParam("apreciacion", request.getParameter("aprec")));//2
                            listaReq.add(new RequestParam("lectura", request.getParameter("lec")));//3
                            listaReq.add(new RequestParam("comentario", request.getParameter("com")));//4
                            listaReq.add(new RequestParam("voltaje", request.getParameter("vol")));//5
                            listaReq.add(new RequestParam("precinto", request.getParameter("prec")));//6
                            listaReq.add(new RequestParam("pruebavacio", request.getParameter("pruvac")));//7
                            listaReq.add(new RequestParam("coordenadax", request.getParameter("cordx")));//8
                            listaReq.add(new RequestParam("coordenaday", request.getParameter("cordy")));//9
                            listaReq.add(new RequestParam("ensayo5", request.getParameter("ensayo5")));//10
                            listaReq.add(new RequestParam("ensayo10", request.getParameter("ensayo10")));//11
                            listaReq.add(new RequestParam("ensayo100", request.getParameter("ensayo100")));//12
                            listaReq.add(new RequestParam("ensayoimax", request.getParameter("ensayoimax")));//13
                        }else{
                            //impedimento
                            listaReq.add(new RequestParam("comentario", request.getParameter("com")));//2
                            listaReq.add(new RequestParam("coordenadax", request.getParameter("cordx")));//3
                            listaReq.add(new RequestParam("coordenaday", request.getParameter("cordy")));//4
                        }
                        jsonRpta = contrasC.processPOSTRequest(RecursoContrastes.regResultado, listaReq);
                    }catch(Exception e){
                        jsonRpta = contrasC.sendMensajeError(e.getMessage());
                    }
                }else{
                //No se especifico un recurso, entonces de vuelve un mensaje de error
                UsuarioController bc = new UsuarioController();
                %><%=bc.sendMensajeError("No especifico un recurso valido")%><%      //Se renderiza un JSON que devuelve el error
                }
                if(!jsonRpta.isEmpty()){
                    %><%=jsonRpta%><%
                }else{
                    UsuarioController bc = new UsuarioController();
                    %><%=bc.sendMensajeError()%><%    
                }
            }else{
                %><%=userC.sendMensajeError("Sesion invalida")%><%
            }
        }else{
            %><%=userC.sendMensajeError("No especifico un usuario")%><%
        }
    }else{
        //No se especifico recurso
        UsuarioController bc = new UsuarioController();
        %><%=bc.sendMensajeError("No especifico un recurso")%><%
    }
    %>